### ① 组件是什么
ServiceAccount(SA)是 Pod 在集群内的身份,Pod 经它携带的令牌向 API Server 请求,RBAC 按 SA 判定权限。每个命名空间有默认 SA,未显式指定时 Pod 挂默认身份。
### ② 语言与 C 库
身份对象与令牌机制由 API Server(Go,goroutine)管理。令牌以文件挂入 Pod,经 `open`/`read` 读取,不 fork。
### ③ 运行机制
创建 SA 时签发绑定令牌,Pod 指定 SA 后令牌挂到约定路径,请求带令牌过认证,RBAC 查该 SA 绑定的角色。
### ④ 常见配置缺陷
- 默认 SA 被绑定宽权限,所有未指定 SA 的 Pod 继承高权。
- SA 令牌自动挂载到不需要的 Pod,泄露面扩大。
- 令牌不过期、不轮换,泄露后长期有效。
- 给 SA 授予 `cluster-admin` 或可读写全部 Secret。
### ⑤ 对应攻击链路
失陷 Pod 读到自身 SA 令牌 → 按 SA 权限经 API Server 动作。SA 过宽即从容器内直达集群 A